//------------------------------------------------------------------------------
// <copyright company="Telligent Systems">
//     Copyright (c) Telligent Systems Corporation.  All rights reserved.
// </copyright> 
//------------------------------------------------------------------------------

using System;
using CommunityServer.Blogs.Components;
using CommunityServer.Components;

namespace CommunityServer.ControlPanel.Blogs
{
	/// <summary>
	/// Summary description for DeleteBlogPostCommand.
	/// </summary>
	public class DeleteBlogPostCommand : BlogCommand
	{
		public DeleteBlogPostCommand()
		{
			//
			// TODO: Add constructor logic here
			//
		}

	    public override string Message(BlogCommandPage page)
	    {
            int postid = CSContext.Current.PostID;
            if(postid > 0)
            {
                WeblogPost wp = WeblogPosts.GetPost(postid,false,false,true);
                if(wp != null)
                {
                    return "Are you sure you want to delete <strong>" + wp.Subject + "</strong>? This action can not be undone.";
                }
            }
	        
            throw new Exception("The post could not be found");
	    }

	    public override void Action(BlogCommandPage page)
	    {
	    	CSContext cntx = CSContext.Current;
	    	int postid = cntx.PostID;
            if(postid > 0)
            {
                WeblogPost wp = WeblogPosts.GetPost(postid,false,false,true);
                if(wp != null)
                {
                    WeblogPosts.Delete(wp,cntx.User.UserID);
                    return;
                }
            }

            throw new Exception("The post could not be found");
	        
	    }

        public override string Title
        {
            get
            {
                return "Delete Post";
            }
        }

	}
}
